<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018/1/11
 * Time: 11:38
 */
namespace app\index\controller;

use think\Controller;
use think\Db;
use think\Request;
use think\Session;
class Content extends Common
{
	public function _initialize()
	{
		/**
		 * 判断是否登录
		 */
		parent::_initialize();
	}
	/**
	 * 内容制作首页
	 * Method Get
	 *
	 * @param string get.title 要检索的字段
	 * @return Array res 产品上架信息
	 * @return string title 检索的字段
	 *
	 */
	
	public function index()
	{
		$db = Db::table('product')->where('status',6)->order('id desc');
		$where = ['query' =>[]];
		if(!empty(input('get.title'))){
			$title = input('get.title');
			//多条件检索
			$db->where("pname|purchaseprice|retailprice|bid","like","%{$title}%");
			$where['query']['title'] = $title;
		}
		$res = $db->where('type',1)->paginate(7,false,$where);
		return view("index",compact('res','title'));
	}
	
	/**
	 * 二维码上传
	 * Method Get
	 * @param string get.id  商品id
	 * @param string get.bid  商品添加人
	 *
	*/
	public function code()
	{
		if(input('get.id') && input('get.bid')){
			$id = input('get.id');
			$bid = input('get.bid');
			return view('code',compact('id','bid'));
		}
	}
	/**
	 * 执行二维码上传
	 * Method Post
	 * @param string post.id 商品id
	 * @param string post.bid 商品添加人
	 * Method Files
	 * @param Array code 二维码图片
	*/
	public function codeUpload()
	{
		if(Request()->isPost()){
			try{
				$id = input('post.id');
				$bid = input('post.bid');
				if(Request()->file('file')){
					$file = Request()->file('file');
					$path =  ROOT_PATH . 'public' . DS . 'product' . DS . $bid . DS .'code';
					$imgPath = 'product'. DS . $bid . DS .'code';
					$info = $file->validate(['size'=>1567800,'ext'=>'jpg,png,gif'])->move($path);
					if($info){
						$input['code'] = $imgPath. DS .$info->getSaveName();
					}else{
						throw new \PDOException($file->getError());
					}
				}
				$result = Db::table('product')->where('id',$id)->update($input);
				if(!$result){
					throw new \PDOException('二维码上传失败');
				}
				$success = ['success'=>'添加成功'];
				return json($success);
			}catch (\PDOException $e){
				$error = ['error'=>$e->getMessage()];
				return json($error);
			}
		}
	}
	
	/**
	 * 上传视频
	 * Method Post
	 * @param string get.id 商品id
	 * @param string get.bid 商品添加人
	*/
	public function video()
	{
		if(input('get.id') && input('get.bid')){
			$id = input('get.id');
			$bid = input('get.bid');
			return view('video',compact('id','bid'));
		}
	}
	/**
	 * 执行视频上传
	 * Method Post
	 * @param string get.id 商品id
	 * @param string get.bid 商品添加人
	 * Method Files
	 * @param Array video 视频
	*/
	public function videoUpload()
	{
		if(Request()->isPost()){
			try{
				$id = input('post.id');
				$bid = input('post.bid');
				if(Request()->file('file')){
					$file = Request()->file('file');
					$path =  ROOT_PATH . 'public' . DS . 'product' . DS . $bid . DS .'video';
					$imgPath = 'product'. DS . $bid . DS .'video';
					$info = $file->validate(['size'=>55678000])->move($path);
					if($info){
						$input['video'] = $imgPath. DS .$info->getSaveName();
					}else{
						throw new \PDOException($file->getError());
					}
				}
				$result = Db::table('product')->where('id',$id)->update($input);
				if(!$result){
					throw new \PDOException('视频上传视频');
				}
				$success = ['success'=>'上传成功'];
				return json($success);
			}catch (\PDOException $e){
				$error = ['error'=>$e->getMessage()];
				return json($error);
			}
		}
	}
}